package com.tdam2013.grupo12.adapters;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

import com.tdam2013.grupo12.R;
import com.tdam2013.grupo12.adapters.HistorialAdapter.ItemRegistroHolder;
import com.tdam2013.grupo12.clasesDeNegocio.Accion;
import com.tdam2013.grupo12.clasesDeNegocio.Mensaje;

import android.content.Context;
import android.opengl.Visibility;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

public class itemMensajeAdapter extends BaseAdapter {

	private ArrayList<Mensaje> mensajes;
	private LayoutInflater inflater;
	
	public itemMensajeAdapter(Context c){
		mensajes = new ArrayList<Mensaje>();
		inflater = LayoutInflater.from(c);
	}
	
	public void addMensaje(Mensaje a){
		if(a != null)
			mensajes.add(a);
	}
	
	public void setMensajes(ArrayList<Mensaje> mensajes){
		this.mensajes = mensajes;
	}
	
	public ArrayList<Mensaje> getMensajes(){
		return mensajes;
	}
	
	@Override
	public int getCount() {
		return mensajes.size();
	}

	@Override
	public Object getItem(int position) {
		return mensajes.get(position);
	}

	@Override
	public long getItemId(int position) {
		return position;
	}

	class ItemMensajeHolder{
		ImageView imagenMensajeRecibido;
		ImageView imagenMensajeEnviado;
		TextView txtMensaje;
		TextView txtFecha;
		TextView txtHora;
	}
	
	@Override
	public View getView(int position, View convertView, ViewGroup parent) {
		ItemMensajeHolder holder;
		if (convertView == null) {
			convertView = inflater.inflate(R.layout.activity_item_mensajeweb, null);
			holder = new ItemMensajeHolder();
			holder.txtMensaje = (TextView) convertView.findViewById(R.id.txtMensaje);
			holder.imagenMensajeEnviado= (ImageView) convertView.findViewById(R.id.imagenMensajeEnviado);
			holder.imagenMensajeRecibido= (ImageView) convertView.findViewById(R.id.imagenMensajeRecibido);
			holder.txtFecha = (TextView) convertView.findViewById(R.id.txtFechaItemMensaje);
			holder.txtHora = (TextView) convertView.findViewById(R.id.txtHoraItemMensaje);

			convertView.setTag(holder);
		} else {
			holder = (ItemMensajeHolder) convertView.getTag();
		}
		
		holder.txtMensaje.setText(mensajes.get(position).getDescripcion());
		if(mensajes.get(position).getTipo().compareTo("Recibido") == 0){
			holder.imagenMensajeEnviado.setVisibility(View.GONE);
			holder.imagenMensajeRecibido.setVisibility(View.VISIBLE);
		}else{
			holder.imagenMensajeRecibido.setVisibility(View.GONE);
			holder.imagenMensajeEnviado.setVisibility(View.VISIBLE);
		}
		Date d = mensajes.get(position).getFechaYHora();
		holder.txtFecha.setText(new SimpleDateFormat("dd/MM/yyyy").format(d));
		holder.txtHora.setText(new SimpleDateFormat("hh:mma").format(d));
		
		return convertView;
	}

}
